/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package leilaomarotojmsrmi;

import java.net.MalformedURLException;
import java.rmi.AlreadyBoundException;
import java.rmi.NotBoundException;
import java.rmi.RemoteException;
import javax.jms.JMSException;
import javax.naming.NamingException;
import todososdados.jms.JmsPublisher;
import todososdados.jms.JmsSubscriber;

/**
 *
 * @author Alice
 */
public class Processo {

    JmsPublisher publisher;
    JmsSubscriber subscriber;
    
   /**
    * Esta é a construtora, na hora que ela é chamada já é realizada uma conexão no jms.
    */
    public Processo() throws JMSException, NamingException, InterruptedException {
         
    }
    
    /*
     * Método que irá realizar a conexão do Suscriber.
     */
    public void inicializarSubscriber() throws JMSException, NamingException, InterruptedException, RemoteException, AlreadyBoundException, MalformedURLException, NotBoundException{
        System.out.println("Criando uma conexão no JmsSubscriber... CRIANDO LEILÃO");
        subscriber = new JmsSubscriber("ConnectionFactory", "topic/flightStatus");
        System.out.println("Conexão criada.");
        
    }
    
   /*
    * Método que irá criar os leilões passando como parâmetro o tempo que
    * cada novo leilão deverá ser criado.
    * 
    */
  public void criandoLeilao() throws JMSException, InterruptedException, NamingException 
    {
         
        publisher = new JmsPublisher("ConnectionFactory", "topic/flightStatus");
        
        String prod = "001 COLAR 100 3";
        publisher.publish(prod);
         
        prod = "002 OVO 300 2";
        publisher.publish(prod);
        
        //prod = "002 300";
        //publisher.publish(prod);
                
        publisher.close();
        //System.exit(0);
    }
    
}
